<?php
require_once 'BaseController.php';
class Admin_DashboardController extends Admin_BaseController{
	private $_identity;
	private $_userModel;
	protected $_postModel;
	protected $_categoryModel;
	protected $_productModel;
	protected $_billModel;
	protected $_pCategoryModel;
	
	public function init(){
		parent::init();
		$auth = Zend_Auth::getInstance();
		$this->_postModel = new Model_Post();
		$this->_categoryModel = new Model_Category();
		$this->_productModel = new Model_Product();
		$this->_billModel = new Model_Bill();
		$this->_pCategoryModel = new Model_PCategory();
		//$this->authorize();
		$this->_identity = $auth->getIdentity();
		
		$this->_userModel = new Model_User();
	}
	public function  indexAction(){
		$this->view->identity = $this->_identity;
		
		//lấy ra tổng số bài viết, số bài viết cho từng category
		$this->view->total_post = $this->_postModel->countPost();
		// lấy dữ liệu post category -> tên category và id category -> lấy ra số post có id_category dó
		
		 $categories = $this->_categoryModel->getAllPost();
		 $report_category = array();
		
		 foreach ($categories as $category){
		 	$report_category[$category->name]= $this->_postModel->countPostInCategory($category->id);
		 }
		 $this->view->report_category = $report_category;
		
		//lấy ra tổng số sản phẩm, số sản phẩm của từng category lv1 và lv2
		$this->view->total_product = $this->_productModel->countProduct();
		//lấy ra  pcategory lv1 ->tên + id ->lấy ra pcategory lv2(nếu có) ->đếm số product của pcategory 
		$pcategorieslv1 = $this->_pCategoryModel->getAllCategoriesLv1();//ok
					
		$this->view->pcategorieslv1 = $pcategorieslv1;
		
		
		//lấy ra tổng số bài viết có type là page, và số bài viết của category nào có type là page
		$this->view->total_page = $this->_postModel->countPage();
		$pages = $this->_categoryModel->getAllPage();
		 $report_page = array();
		
		 foreach ($pages as $page){
		 	$report_page[$page->name]= $this->_postModel->countPostInCategory($page->id);
		 }
		 $this->view->report_page = $report_page;
		
		// lấy ra tổng số bill và tổng số bill có field readed = 0
		$this->view->total_bill = $this->_billModel->countBill();
		$this->view->total_billUnReaded = $this->_billModel->countBillUnReaded();
	}
}
?>